A normalization operation for NeurEco is a combination of a :math:`shift` and a :math:`scale`, so that:

.. math:: x_{normalized} = \frac{x-shift}{scale}
  
Allowed shift methods for NeurEco and their corresponding shifted values are listed in the table below:

.. csv-table:: NeurEco Tabular shifting methods
   :file: csv_tables/NeurEcoTabularShiftingMethods.csv
   :header-rows: 1
   :class: longtable
   :widths: 3, 5
   :delim: ;
   :align: center

Allowed scale methods for NeurEco Tabular and their corresponding scaled values are listed in the table below:

.. csv-table:: NeurEco Tabular scaling methods
   :file: csv_tables/NeurEcoTabularScalingMethods.csv
   :header-rows: 1
   :class: longtable
   :widths: 3, 5
   :delim: ;
   :align: center

Normalization with *auto* options: 

* *shift* is *mean* and *scale* is *max* if the value of *mean* is far from 0,
* *shift* is *none* and *scale* is *max* if the calculated value of *mean* is close to 0

If the normalization is performed by feature, and the *auto* options are chosen, the normalization is performed by group of features.
These groups are created based on the values of *mean* and *std*.
